package com.tom.imooc.dynamicdatasource;

import com.tom.imooc.staticdatasource.DataSourceContext;
import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource;

import java.util.Map;

/**
 * 自定义指定数据源
 *
 * @date 2024年12月16日 20:19
 */
public class SpringDynamicDataSource extends AbstractRoutingDataSource {

    public SpringDynamicDataSource(Map<Object, Object> targetDataSources) {
        super.setTargetDataSources(targetDataSources);
    }

    /**
     * 决定使用那一个数据源
     *
     * @return 指定的数据源
     */
    @Override
    protected Object determineCurrentLookupKey() {
        return DataSourceContext.getCurrentDb();
    }
}